package com.aici.dashboardHandle.service;

import com.aici.dashboardHandle.dto.*;

import java.util.List;
import java.util.UUID;

/**
 * @author zhongfs
 */
public interface DashBoardService {


    List<TDashboardDTO> queryByTitleWithUserCode(String userCode, String title, Integer pageNo, Integer pageSize);

    boolean insertUserDashProjectRela(TUserDashProjectRelaDTO tUserDashProjectRelaDTO);

    boolean insertDashboard(TDashboardDTO tDashboardDTO);

    int queryCountByTitleWithUserCode(String title, String userCode);

    boolean insertDashCanvasRela(TDashCanvasRelaDTO tDashCanvasRelaDTO);

    boolean insertCanvas(TCanvasDTO tCanvasDTO);

    boolean insertCanvasComponentRela(TCanvasComponentRelaDTO tCanvasComponentRelaDTO);

    boolean insertComponent(TComponentDTO tComponentDTO);

    boolean insertComponentData(TComponentDataDTO tComponentDataDTO);

    int queryCntByTitleWithUserCode(String userCode, String title);

    TDashboardDTO queryByDashId(String dashId);

    //以下为删除功能
    boolean deleteDashboardByDashId(String dashId);
    boolean deleteUserDashRelaByDashId(String dashId);
    String  selectDashCanvasRelaByDashId(String dashId);
    boolean deleteDashCanvasRelaByCanvasId(String canvasId);
    boolean deleteCanvasByCanvasId(String canvasId);
    List<String>  selectCanvasComponentRelaByCanvasId(String canvasId);
    boolean deleteCanvasComponentRelaByComponentId(String componentId);
    boolean deleteComponentByComponentId(String componentId);
    boolean deleteComponentDataByComponentId(String componentId);
}
